﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using CapaDatos;
using System.Data;
namespace CapaNegocio
{
    public class NRegistro_Compras
    {
        //Método Insertar que llama al método Insertar de la clase DCliente  
        //de la CapaDatos  
        public static string Insertar(
            DateTime fecha_emision,
            DateTime fecha_vencimiento,
            string serie_tabla11,
            string glosa, 
            DateTime anho_emisiondua,
            string num_comprobante_pago,
            decimal base_imponible,
            decimal igv1,
            decimal valores_nogravados,
            decimal isc,
            decimal otros_tributos_cargos,
            string num_comprob_pago_emitido_snd, 
            string cdd_numero,
            DateTime cdd_fecha_emision,
            string tipo_cambio,
            DateTime rp_fecha,
            int rp_tipo,  
            string rp_serie,
            string rp_num_comprobante,
            int idproveedor,
            int idtabla10,
            int idplancontable,
            int idtrabajador,
            string cuenta,
            string descripcion,
            decimal debe,
            decimal haber,
            decimal base2,
            decimal igv2,
            decimal base1,
            decimal igv3,string estado)
        {

            DRegistro_Compras Obj = new DRegistro_Compras();

            Obj.Fecha_Emision = fecha_emision;
            Obj.Fecha_Vencimiento = fecha_vencimiento;
            Obj.Serie_Tabla11 = serie_tabla11;
            Obj.Glosa = glosa;
            Obj.Anho_Emisiondua = anho_emisiondua;
            Obj.Num_Comprobante_Pago = num_comprobante_pago;
            Obj.Base_Imponible = base_imponible;
            Obj.Igv1 = igv1;
            Obj.Valores_Nogravados = valores_nogravados;
            Obj.Isc = isc;
            Obj.Otros_Tributos_Cargos = otros_tributos_cargos;
            Obj.Num_Comprobante_Pago_Emitido_Snd = num_comprob_pago_emitido_snd;
            Obj.Cdd_Numero = cdd_numero;
            Obj.Cdd_Fecha_Emision = cdd_fecha_emision;
            Obj.Tipo_Cambio = tipo_cambio;
            Obj.Rp_Fecha = rp_fecha;
            Obj.Rp_Tipo = rp_tipo;
            Obj.Rp_Serie = rp_serie;
            Obj.Rp_Num_Comprobante = rp_num_comprobante;
            Obj.Idproveedor = idproveedor;
            Obj.Idtabla10 = idtabla10;
            Obj.Idplancontable = idplancontable;
            Obj.Idtrabajador = idtrabajador;
            Obj.Cuenta = cuenta;
            Obj.Descripcion = descripcion;
            Obj.Haber = haber;
            Obj.Debe = debe;
            Obj.Base2 = base2;
            Obj.Igv2 = igv2;
            Obj.Base1 = base1;
            Obj.Igv3 = igv3;
            Obj.Estado = estado;
            return Obj.Insertar(Obj);
        }

        //Método Editar que llama al método Editar de la clase DCategoría
        //de la CapaDatos
        public static string Editar(
            int idregistrocompras,
            DateTime fecha_emision,
            DateTime fecha_vencimiento,
            string serie_tabla11,
            string glosa,
            DateTime anho_emisiondua,
            string num_comprobante_pago,
            decimal base_imponible,
            decimal igv1,
            decimal valores_nogravados,
            decimal isc,
            decimal otros_tributos_cargos,
            string num_comprob_pago_emitido_snd,
            string cdd_numero,
            DateTime cdd_fecha_emision,
            string tipo_cambio,
            DateTime rp_fecha,
            int rp_tipo,
            string rp_serie,
            string rp_num_comprobante,
            int idproveedor,
            int idtabla10,
            int idplancontable,
            int idtrabajador,
            string cuenta,
            string descripcion,
            decimal debe,
            decimal haber,
            decimal base2,
            decimal igv2,
            decimal base1,
            decimal igv3,string estado)
        {
            DRegistro_Compras Obj = new DRegistro_Compras();
            Obj.Idregistrocompras = idregistrocompras;
            Obj.Fecha_Emision = fecha_emision;
            Obj.Fecha_Vencimiento = fecha_vencimiento;
            Obj.Serie_Tabla11 = serie_tabla11;
            Obj.Glosa = glosa;
            Obj.Anho_Emisiondua = anho_emisiondua;
            Obj.Num_Comprobante_Pago = num_comprobante_pago;
            Obj.Base_Imponible = base_imponible;
            Obj.Igv1 = igv1;
            Obj.Valores_Nogravados = valores_nogravados;
            Obj.Isc = isc;
            Obj.Otros_Tributos_Cargos = otros_tributos_cargos;
            Obj.Num_Comprobante_Pago_Emitido_Snd = num_comprob_pago_emitido_snd;
            Obj.Cdd_Numero = cdd_numero;
            Obj.Cdd_Fecha_Emision = cdd_fecha_emision;
            Obj.Tipo_Cambio = tipo_cambio;
            Obj.Rp_Fecha = rp_fecha;
            Obj.Rp_Tipo = rp_tipo;
            Obj.Rp_Serie = rp_serie;
            Obj.Rp_Num_Comprobante = rp_num_comprobante;
            Obj.Idproveedor = idproveedor;
            Obj.Idtabla10 = idtabla10;
            Obj.Idplancontable = idplancontable;
            Obj.Idtrabajador = idtrabajador;
            Obj.Cuenta = cuenta;
            Obj.Descripcion = descripcion;
            Obj.Haber = haber;
            Obj.Debe = debe;
            Obj.Base2 = base2;
            Obj.Igv2 = igv2;
            Obj.Base1 = base1;
            Obj.Igv3 = igv3;
            Obj.Estado = estado;
            return Obj.Editar(Obj);
        }

        //Método Eliminar que llama al método Eliminar de la clase DCliente  
        //de la CapaDatos  
        public static string Eliminar(int idregistrocompras)
        {
            DRegistro_Compras Obj = new DRegistro_Compras();
            Obj.Idregistrocompras = idregistrocompras;
            return Obj.Eliminar(Obj);
        }

        //Método Mostrar que llama al método Mostrar de la clase DCliente  
        //de la CapaDatos  
        public static DataTable Mostrar()
        {
            return new DRegistro_Compras().Mostrar();
        }
  
        //Método BuscarApellidos que llama al método BuscarApellidos  
        //de la clase DTrabajador de la CapaDatos  
        public static DataTable BuscarFecha(string textobuscar)
        {
            DRegistro_Compras Obj = new DRegistro_Compras();
            Obj.TextoBuscar = textobuscar;
            return Obj.BuscarFecha(Obj);
        }  
    }
}
